package com.csu.tingtian.service;

import com.csu.tingtian.common.CommonResponse;
import com.csu.tingtian.entity.Fruit;
import com.csu.tingtian.entity.LegalFarm;
import com.csu.tingtian.entity.ProvideProduce;
import com.csu.tingtian.entity.Vegetable;
import com.csu.tingtian.vo.BusinessProduce;
import com.csu.tingtian.vo.Produce;

import java.util.List;

public interface ProduceService {
    //根据农产品的id，获取上架了这个产品的所有商家信息（农场名，商家用户名，产品价格，店铺评分，农场地址）
    CommonResponse<List<Produce>> getProduceById(String id);
    //根据farmName获取该农场详细信息
    CommonResponse<LegalFarm> getFarm(String farmName);
    //根据fruitId获取该水果详细信息
    CommonResponse<Fruit> getFruitById(String id);
    //根据vegetableId获取该蔬菜详细信息
    CommonResponse<Vegetable> getVegetableById(String id);
    //获取所有水果
    CommonResponse<List<Fruit>> getAllFruit();
    //获取所有蔬菜
    CommonResponse<List<Vegetable>> getAllVegetable();
    //商家上架农产品，即插入一条记录到provideproduce表中
    CommonResponse<ProvideProduce> insertProvideProduce(String id,double price,String farmName);
    //商家下架农产品，即删除provideproduce表中的某条记录
    CommonResponse<String> deleteProvideProduce(String id,String farmName);
    //根据farmName获取他上架的所有农产品（provideProduce）
    CommonResponse<List<BusinessProduce>> getBusinessAllProduce(String farmName);
}
